AWS再入門ブログリレー Amazon QuickSight編
当エントリは弊社コンサルティング部による『AWS 再入門ブログリレー 2019』の6日目のエントリです。
このブログリレーの企画は、普段AWSサービスについて最新のネタ・深い/細かいテーマを主に書き連ねてきたメンバーの手によって、今一度初心に返って、基本的な部分を見つめ直してみよう、解説してみようというコンセプトが含まれています。
AWSをこれから学ぼう!という方にとっては文字通りの入門記事として、またすでにAWSを活用されている方にとってもAWSサービスの再発見や2019年のサービスアップデートのキャッチアップの場となればと考えておりますので、ぜひ最後までお付合い頂ければ幸いです。
では、さっそくいってみましょう。6日目のテーマは『Amazon QuickSight(以下、QuickSight)』です。
目次
QuickSightとは
管理不要で自動的にスケールするビジネス分析(BI)サービスです。
Athena、Redshift、S3等、多数のデータソース(データ供給元)に対応しており、管理者がデータソースから、データセット(データソース内の特定のデータ)を定義し、QuickSightのユーザに公開することが可能です。QuickSightのユーザは、データセットを元に分析を行うことが可能になります。
QuickSightとSPICE
QuickSightにはSPICEというインメモリ型の高速データベースが内蔵されています。S3やPC上のファイルをデータソースにする場合は、SPICEに取り込むことで分析が可能になります。
Athena、Redshift等は、SPICEを使わず直接クエリ(SQL)を発行して利用することが可能です。また、何度も参照するような直近のデータだけをSPICEに取り込むこと事も可能です。SPICEに取り込むことで、クエリ速度の向上と、データソースへの負荷低減にもつながります。
1ユーザあたり10GBのSPICEが利用可能になります。(無料ユーザは1GB)また、SPICEにインポートできる1データセットの最大サイズは25GB以下である必要があります。詳細については以下をご確認ください。
サポートされているデータソース
リレーショナルデータソース
AWS上にホストされているAthena、Aurora、Redshift等、多数のデータソースに対応しています。その他、サポートされいてるデータソースについては以下をご確認ください。
ファイルデータソース
QuickSightでは以下形式のファイルがサポートされています。
- CSV/TSV、ELF/CLF、JSON、XLSX
zipまたは、gzipで圧縮されたS3内のファイルは、そのままQuickSightに取り込むことができます。別の圧縮プログラムで圧縮されたファイルは、取り込む前に解凍しておく必要があります。詳細については以下をご確認ください。
SaaSデータソース
GitHubや、JIRA等、SaaSのデータソースにも対応しています。詳細については以下をご確認ください。
Editionにおける機能と料金体系
QuickSightではStandardとEnterpriseの2つのEditionがあり、機能と料金体系が異なります。Standard Editionと比べ、Enterprise Editionの方が多くの機能を提供しています。
機能 | Standard Edition | Enterprise Edition |
---|---|---|
データレイク、ビジネスアプリケーションへの接続 | Yes | Yes |
AutoGraph による容易なデータ分析 | Yes | Yes |
迅速でスケーラブルな可視化 | Yes | Yes |
アクセス用のダッシュボードの公開 | Yes | Yes |
SAML または OpenID Connect によるシングルサインオン | Yes | Yes |
ウェブおよびモバイルアクセス | Yes | Yes |
詳細情報へのドリルダウンおよびフィルターのカスタマイズ | Yes | Yes |
AWS CloudTrail による監査ログの有効化 | Yes | Yes |
閲覧者(READER) | No | Yes |
メールレポート | No | Yes |
VPC、オンプレミスのデータへのアクセス | No | Yes |
行レベルセキュリティ | No | Yes |
SPICE 1 時間ごとのリフレッシュ | No | Yes |
SPICE保管中のデータの暗号化 | No | Yes |
Active Directory連携 | No | Yes |
ダッシュボードの埋め込みとAPIサポート | No | Yes |
ML インサイトの使用 | No | Yes |
Enterprise Edition料金
Enterprise Editionでは、Author(製作者)とReader(閲覧者)というユーザ種別があり、それぞれ料金が異なります。
Author(製作者)
データセットの作成や、可視化するダッシュボードを作成することが可能です。QuickSightをフルに活用できるユーザです。契約期間により利用料金が異なります。以下、1ユーザあたりの料金になります。
- 年間契約… $18
- 月契約… $24
Reader(閲覧者)
ダッシュボードを閲覧しデータの分析が可能です。Readerは使った分だけの利用料金なります。(Pay-Per-Session)1セッション(ログインしてから30分)あたり$0.3かかり、最大で$5となります。つまり、まったく利用しなければ料金はかからず、どんなに利用しても場合でも$5になるので、利用するかどうかわからないユーザに対しても、料金を気にせずQuickSightを提供することが可能になります。
Enterprise Editionの詳細については、以下をご確認ください。
Standard Edition
Standard Editionでは、Enterprise EditionのようなReaderのプライスの設定はありません。以下、1ユーザあたりの料金になります。
- 年間契約… $9
- 月契約… $12
StandardとEnterprise、どちらのEditionを利用しても、60日間の試用期間(Free Trial)と、期限なしで適用される無料枠(Free Tier)が提供されます。詳細については、以下をご確認ください。
ハンズオンキットで理解を深めよう
QuickSightでは、ハンズオンキットが公開されています。こちらのハンズオンキットを利用すると、QuickSight + SPICE、QuickSight + Athenaの可視化を自習形式で体験できます。日本語で記載されたマニュアルや、分析に利用するデータが同梱されています。以下よりダウンロードすることが可能です。
以降は、ハンズオンキットの実施内容について触れていきたいと思います。同梱されたマニュアルに手順が記載されているため、ここでは、詳細な手順については割愛しています。
ハンズオン1:CSVファイルをアップロードしQuickSightで分析
手元の株価データ(CSV ファイル)をQuickSightにアップロードして、クイックに可視化、分析を体験するハンズオンです。
データソースはCSVファイルのため、SPICEに取り込む必要があります。取り込み実施前のSPICEの使用容量は0バイトになります。
データセットを作成します。株価データはcsvファイルのため、ファイルをアップロードします。
データを取り込んだ後は、データセットに名前を付け、可視化するデータの表示名や、表示させる項目を選択します。(ここではAdj Closeは除外しています。)
データセットを作成すると、SPICEに取り込まれていますので、使用容量が増えていることが確認できます。データセットが作成できましたので、以降は可視化や分析を行います。
ビジュアルタイプを選択し、可視化するデータをドラッグ&ドロップで作成していきます。
パラメータとフィルタを利用することで、表示させるデータをある特定の期間にすることも可能です。
ハンズオン2:大規模データをAthena経由でクエリし可視化する
S3上に配置された巨大データに対して、Athenaを通じてクエリ(SQL実行)できるように設定し、その環境にQuickSightでアクセスして可視化することを体験するハンズオンです。
Athenaからサンプルデータをクエリする
可視化するデータ(米国国内線の発着データ)はAWS側のS3バケットに保存されており、gzip圧縮されたTSVファイルとなります。
Athenaでデータベース(ここではqshandson)を作成し、指定したS3上のデータに対するテーブル(ここではflightdata1)を作成しました。
レコード数を数えるSQLを発行しました。約2,000万件のデータがあり、実行時間は約30秒です。
クエリ速度改善のためにAthenaにてパーティション分割をしたテーブル(ここではflightdata2)を作成しました。先程と同様のSQLを発行すると、実行結果は同様ですが実行時間は約3秒で、クエリ速度の改善が確認できました。これでデータソース(Athena)の準備は完了です。
QuickSightからAthenaに接続する
Athena上に作成したflightdata2テーブルのデータを可視化していきます。QuickSightからアクセス可能なリソース(ここではAthenaとS3)を設定します。
Athenaのデータセットを作成します。
データセットが作成後は可視化を行っていきます。ここでは複数のグラフを使い、以下のような可視化を行いました。
さいごに
以上、『AWS サービス別 再入門ブログリレー 2019』の6日目のエントリ『Amazon QuickSight編』でした。 QuickSightには、試用期間(Free Trial)が設けられていますので、紹介しましたハンズオン等、実際にその手で触って動作を確かめていただくと、より理解が深まるかと思います。
明日(7/9)は奥の「IAM(AWS Identity and Access Management)」の予定です。お楽しみに!